package com.alexgaoyh.MutiModule.Dubbo.RWSeperate.persist.manager.demo.oneWithMany.course;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.alexgaoyh.MutiModule.Dubbo.RWSeperate.persist.manager.demo.oneWithMany.view.CourseStudentView;

public interface OneWithManyCourseMapper {
    int countByExample(OneWithManyCourseExample example);

    int deleteByExample(OneWithManyCourseExample example);

    int deleteByPrimaryKey(Long id);

    int insert(OneWithManyCourse record);

    int insertSelective(OneWithManyCourse record);

    List<OneWithManyCourse> selectByExample(OneWithManyCourseExample example);

    OneWithManyCourse selectByPrimaryKey(Long id);

    int updateByExampleSelective(@Param("record") OneWithManyCourse record, @Param("example") OneWithManyCourseExample example);

    int updateByExample(@Param("record") OneWithManyCourse record, @Param("example") OneWithManyCourseExample example);

    int updateByPrimaryKeySelective(OneWithManyCourse record);

    int updateByPrimaryKey(OneWithManyCourse record);
    
    // alexgaoyh add
    
    /**
     * 根据course 的过滤规则，查询出 一个班级下的所有学生信息
     * @param example
     * @return
     */
    List<CourseStudentView> selectCourseWithStudentByExample(OneWithManyCourseExample example);
}